package dfdc

//player 玩家信息
type PlayerInfo struct {
	//玩家编号
	ID string `json:"id"`
	//代理编号
	AgentID string `json:"agentID"`
	//玩家账号
	UserID string `json:"userID"`
	//进场金钱
	BeginScore int64 `json:"beginScore"`
	//离场金钱
	EndScore int64 `json:"endScore"`
	//下注
	Bet int64 `json:"bet"`
	//输赢
	WinScore int64 `json:"winScore"`
	//游戏时间
	Time int64 `json:"time"`
	//局号
	RoundID string `json:"roundID"`
	//客户端ip
	IP string `json:"ip"`
	//流水
	ScoreFlow int64 `json:"scoreFlow"`
	//暗税
	InvisibleTax int64 `json:"invisibleTax"`
	// 受控类型，0为不受控（原则上永远不可能为0），1为受管控控制，2为受特控控制，3为受个人水位控制，4为受系统水位控制，本字段只对真实玩家有意义
	CtrlType int32 `json:"ctrlType"`
	// 杀放概率，[-1, 1]区间的浮点数，为负代表系统针对玩家放水的概率，为正代表系统针对玩家杀分的概率，0表示不杀不放，本字段只对真实玩家有意义
	KillRate float32 `json:"killRate"`
	// 是否真的受控，本字段只对真实玩家有意义
	IsCtrl bool `json:"isCtrl"`
}

//optType Event_SPIN Event = 7405569
//旋转结果
type SpinLog struct {
	//玩家信息
	PlayerInfo `json:",inline" bson:"-"`
	//旋转档次
	BetLevel int32 `json:"betLevel"`
	//押注倍数
	BetTimes int32 `json:"betTimes"`
	//是否免费旋转
	FreeSpin bool `json:"freeSpin"`
	//赢的钱
	WinMoney int64 `json:"winMoney"`
	//玩家当前金币剩余
	LeftMoney int64 `json:"leftMoney"`
	//是否触发了免费游戏
	IsTriggerFree bool `json:"isTriggerFree"`
	//是否触发了彩金游戏
	IsTriggerScatter bool `json:"isTriggerScatter"`
	//免费次数剩余
	FreeLeftTimes int32 `json:"freeLeftTimes"`
	//本次旋转使用的库
	Use string `json:"use"`
	//旋转出来的结果15个元素 第一排为前5个 第二排中间5个
	Result [15]int32 `json:"result"`
}

//optType Event_BET_DOUBLE Event = 7405571
//加倍游戏结果
type DoubleLog struct {
	//玩家信息
	PlayerInfo `json:",inline" bson:"-"`
	//上次赢的钱，翻倍之前的钱
	LastWin int64 `json:"lastWin"`
	//本次选择的比倍的玩法	0:红桃 1:方块 2:梅花 3:黑桃 4:红  5:黑
	DoubleItem int32 `json:"doubleItem"`
	//连续第几次比倍
	DoubleTimes int32 `json:"doubleTimes"`
	//本次比倍赢的概率
	WinProb float32 `json:"winProb"`
	//本次是否赢
	Win bool `json:"win"`
	//本次开出的结果 0:红桃 1:方块 2:梅花 3:黑桃
	OpenItem int32 `json:"openItem"`
}

//optType Event_OPEN_TREASURE_BOX Event = 7405573
//玩彩池游戏，点击一下
type ScatterLog struct {
	//玩家信息
	PlayerInfo `json:",inline" bson:"-"`
	//开的哪个档次的彩池游戏
	ScatterLevel int32 `json:"scatterLevel"`
	//这次开出来的id     0: 多寿 1:多喜 2:多财 3:多福
	BoxValue int32 `json:"boxValue"`
	//本次是否翻出奖励
	OpenFinish bool `json:"openFinish"`
}

//optType Event_WINNING_JACKPOT Event =  7405576
//玩家中奖日志 彩池奖励
type WinJackpotLog struct {
	//玩家信息
	PlayerInfo `json:",inline" bson:"-"`
	//中得彩池类型   0: 多寿 1:多喜 2:多财 3:多福
	JackpotType int32 `json:"jackpotType"`
	//中得的钱
	WinMoney int64 `json:"winMoney"`
}

//optType Event_JACKPOT_RANK Event = 7405577
//玩家请求排行榜
type RankLog struct {
	//玩家信息
	PlayerInfo `json:",inline" bson:"-"`
	//排行榜类型   0: 多寿 1:多喜 2:多财 3:多福
	RankType int32 `json:"rankType"`
	//请求的偏移量，第几个十个，1表示1-10    5表示51-60
	Offset int32 `json:"offset"`
	//本次发送给客户端的排行榜数据条数
	SendCount int32 `json:"sendCount"`
}

//optType Event_WITHDRAW_MONEY Event = 7405580
//玩家提取钱
type WithdrawMoney struct {
	//玩家信息
	PlayerInfo `json:",inline" bson:"-"`
	//提取的数量
	WithdrawCount int64 `json:"withdrawCount"`
}
